Digital information is commonly stored on data-storage disks. Data-storage disks are used in conjunction with some type of disk drive that is adapted to rotate the disk. Data-storage systems typically comprise a data-transducing head that reads and/or writes information to and from the disk surface as the disk rotates. For example, the data-transducing head may be a magnetoresistive read/write head adapted for use with a magnetic-media disk. Alternatively, the data-transducing head can be an optical sensor that registers the reflection of a beam of light from the surface of an optical disk. Unless otherwise noted, the term xe2x80x9cdata-transducing head,xe2x80x9d as used throughout the specification and claims, refers collectively to these various types of transducers.
The data-transducing head is usually coupled to an actuator mechanism. The actuator mechanism positions the data-transducing head proximate the surface of the data disk. Furthermore, the actuator moves the head across the disk surface, thereby allowing the head to store and retrieve data to and from various locations on the disk surface. Movement of the actuator is usually regulated by way of a control input generated by a servo controller.
The digital information on a data disk is usually stored in series of continuous tracks arranged concentrically about the geometric center of the disk. Accurate storage and retrieval of information to and from a particular track requires that the data-transducing head be positioned in the center of the track during read/write operations. Closed-loop servo controllers are commonly used to maintain the required alignment between the head and the data track. One particular type of closed-loop servo controller relies on the use of so-called embedded servo sectors. An embedded servo sector comprises a grouping of servo information stored, or embedded, within the concentric data tracks on the disk surface. More particularly, servo information is stored in the form of burst patterns positioned in constantly-spaced intervals along the data track. Hence, each data track contains a series of servo sectors used for directional guidance of the data-transducing head, and a series of data sectors utilized by the disk user to store information.
The process of maintaining the data-transducing head over the track centerline is called track following. The prerecorded servo information on the disk surface is sensed by the head during track-following operations. The information is demodulated to generate a grey code that contains track and sector-identification information. The servo information is also used to generate a tracking-error signal. The error signal is a function of the offset between the head and the track centerline. The grey code and the tracking-error signal are input to a central processing unit (CPU). The CPU performs a series of calculations and generates a compensation signal. The compensation signal directs the actuator mechanism to move the head toward the centerline of the data-storage track. This closed control loop is typically referred to as the primary servo loop of the disk drive.
A number of factors can cause the data-transducing head to deviate from the data-track centerline. One such factor is the so-called repeatable runout of the data-storage disk. Repeatable runout is typically a major component of the tracking error. Runout is caused by the presence of an offset between the center of rotation of the disk and the center of the data track. Such an offset can be caused by the disk drive system, e.g., by an unbalanced spindle or a non-ideal bearing. An offset can also result from imperfections in the disk itself, e.g., misalignment between the axis of rotation of the disk and the center of a data track. If not corrected, repeatable runout will produce a tracking error that varies in a repetitive manner, e.g., sinusoidally, with a frequency corresponding to the angular velocity of the disk (or even multiples thereof).
The repetitive nature of repeatable runout makes it feasible to compensate for such runout using techniques independent of the above-noted primary servo loop. For example, a correction generated by a secondary control loop within the servo controller can be implemented based on runout values determined during prior revolutions of the data-storage disk. Compensating for the runout error in this manner enhances the track-following accuracy of the data-transducing head. The use of previously-determined error values, however, requires memory space in which to store the values. Increased memory requirements typically increase the complexity, size, and cost of the disk drive system, and may decrease the speed at which the system can store and retrieve information. Thus, a compensation technique for repeatable runout that requires a minimal amount of memory space is highly desirable.
The actuator mechanism of a disk drive requires a finite amount of time to respond to the control inputs that regulate its position. The response time is a function of the dynamic characteristics of the actuator, as well as the characteristics of the to-be-applied correction. Hence, where possible, control inputs are typically provided to the actuator in advance of the point at which the actual head-position correction is required. Runout compensation values, as noted above, can be pre-determined due to the repetitive nature of repeatable runout. Thus, runout-compensation values are typically input to the actuator mechanism in advance of the point at which the corresponding head-position correction is needed. The interval by which the runout-compensation value is advanced is hereinafter referred to as an xe2x80x9canticipation interval.xe2x80x9d Optimally, the anticipation interval is equal to the response time of the actuator mechanism. Hence, under optimal circumstances, the position of the head is physically adjusted, i.e., corrected, as the location on the data track corresponding to the correction passes the head.
The anticipation interval is usually set at a value corresponding to a particular number of servo sectors. In other words, for an anticipation interval equal to xe2x80x9cn1xe2x80x9d servo sectors, the runout-compensation correction is input to the actuator mechanism n1 servo-sectors in advance of the particular location on the disk to which the correction corresponds. Furthermore, the anticipation interval is typically set in whole-sector increments. Limiting the anticipation interval to whole-sector increments, however, produces less-than-optimal results where the response time of the actuator mechanism does not correspond to a whole-sector increment. In such cases, the anticipation interval must be set in increments other than whole sectors in order to produce optimal tracking by the data-transducing head. Hence, a disk drive that can operate with an anticipation interval that does not necessarily correspond to a whole number of servo sectors is highly desirable.
The present invention is directed to the above-mentioned goals.
The present invention provides a disk drive with improved repeatable runout compensation. The disk drive is adapted for use with a rotatable data-storage disk having a plurality of servo sectors embedded along a data track on the disk. The disk drive comprises an actuator mechanism. The drive also comprises a data-transducing head that reads position-error data from the servo sectors. The data-transducing head is mechanically coupled to the actuator. The drive further comprises a servo controller electrically coupled to the data-transducing head and the actuator mechanism.
The servo controller stores the above-noted position-error data from a selected group of servo sectors. The selected group of servo sectors is lesser in number than the plurality of servo sectors embedded along the data track on the disk. The controller generates a plurality of runout-error corrections based on this data. The plurality of runout-error corrections are greater in number than the selected group of servo sectors. The servo controller adjusts the position of the actuator mechanism based on the plurality of runout-error corrections. The controller thereby compensates for repeatable runout between the data-transducing head and the disk.
The invention also provides a method for providing improved runout compensation in a disk drive. The method comprises the step of reading position-error data from servo sectors embedded along a data track of a data-storage disk disposed within the drive. The method further comprises the step of storing position-error data from a selected group of servo sectors. The selected group of servo sectors is lesser in number than the plurality of servo sectors embedded along the data track on the disk. The method also comprises the step of generating a plurality of runout-error corrections based on the position-error data from the selected group of servo sectors. The plurality of runout-error corrections are greater in number than the selected group of servo sectors. The method also comprises the step of adjusting the position of an actuator mechanism mechanically coupled to the data-transducing head based on the plurality of runout-error corrections.
Another embodiment of the invention provides a disk drive that is adapted to operate with an anticipation interval having an integer portion and a fractional portion. The drive comprises an actuator mechanism. The drive further comprises a data-transducing head mechanically coupled to the actuator. The head reads position-error data and a servo-sector number from servo sectors embedded along a data track of a data-storage disk. The drive also comprises a servo controller electrically coupled to the data-transducing head and the actuator mechanism. The servo controller comprises a memory array.
The servo controller stores and indexes position-error data from a first servo sector in a first location in the memory array. The controller also reads position-error data from a second location in the memory array. The second location corresponds to the number of the first servo-sector plus the integer portion of the anticipation interval. Furthermore, the controller reads position-error data from a third location in the array. The third location is adjacent to the second location. The controller interpolates a runout-error correction based on the position-error data from the second and third array locations, and a fractional portion of the anticipation interval. The controller adjusts the position of the actuator mechanism based on the interpolated runout-error correction, thereby compensating for repeatable runout between the data-transducing head and the data-storage disk.
The invention also provides a method for compensating for repeatable runout in a disk drive that is adapted to operate with an anticipation interval having an integer portion and a fractional portion. This method comprises the step of reading position-error data and a servo-sector number from a first servo sector embedded in a data track of a data-storage disk. The method also comprises the step of storing and indexing the position-error data in a first location in a memory array. The method further comprises the step of reading position-error data from a second location in the memory array. The second location corresponds to the number of the first servo sector plus an integer portion of the anticipation interval. The method also comprises the step of reading position-error data from a third location in the memory array. The third location is adjacent to the second location. The method further comprises the step of interpolating a runout-error correction based on the position-error data from the second and third locations and the fractional portion of the anticipation interval. The method further comprises the step of adjusting the position of an actuator mechanism coupled to the data-transducing head based on the runout-error correction.
A further embodiment of the invention provides a disk drive in which improved runout-error compensation is achieved through the use of a digital filter. The drive comprises an actuator mechanism. The drive further comprises a data-transducing head mechanically coupled to the actuator. The head reads position-error data and a servo-sector number from servo sectors embedded along a data track of a data-storage disk. The drive also comprises a servo controller electrically coupled to the data-transducing head and the actuator mechanism. The servo controller comprises a memory array bearing a set of computer-executable instructions. The instructions comprise an nth-order digital filter.
The servo controller stores and indexes position-error data from a first servo sector in a first location in the memory array. The servo controller also reads position-error data from locations in the memory array corresponding to the first servo sector, a second servo sector having a sector number equal to the number of the first servo sector minus n, and servo sectors having sector numbers between the sector numbers of the first and second servo sectors. The controller inputs this position-error data to the digital filter, and calculates a runout-error correction using the digital filter. The controller adjusts the position of the actuator mechanism based on the runout-error correction, thereby compensating for repeatable runout between the data-transducing head and the data-storage disk.
The invention also provides a method for compensating for repeatable runout between a data-transducing head and a data-storage disk through the use of digital filter. The method comprises the step of reading position-error data and a servo-sector number from a first servo sector embedded in a data track of a data disk. The method also comprises the step of storing and indexing the position-error data in a first location in a memory array. The method further comprises the step of reading position-error data from locations in the memory array corresponding to the first servo sector, a second servo sector having a sector number equal to the number of the first servo sector minus n, and servo sectors having sector numbers between the sector numbers of the first and second sectors. Additionally, the method comprises the steps of inputting this position-error data to the digital filter, and calculating a runout-error correction using the digital filter. The method further comprises the step of adjusting the position of the actuator mechanism based on the runout-error correction.